Traditionally, the functionality of general purpose processors (GPPs) and digital signal processors (DSPs) have been implemented separately as individual processors. But, as modern applications, for example, DVD recorders, cable set-top boxes, VoIP systems, and MP3 players demand both general purpose processing and digital signal processing capabilities, and as GPPs become faster, the trend has been to converge the functionality of GPPs and DSPs into a single processor.